home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / v9n03.arc / HERTZ.FNC < prev    next >
Text File  |  1990-01-12  |  550b  |  30 lines

  1.  
  2. HERTZ function
  3.  
  4.  
  5.  
  6. VAR
  7.   Oct_Val : ARRAY[5..12] OF Real;
  8.   Freq_Val : ARRAY[0..12] OF Real;
  9.  
  10.   PROCEDURE Set_Frequencies;
  11.   VAR N : Byte;
  12.   BEGIN
  13.     Freq_Val[1] := 1;
  14.     Freq_Val[2] := 1.0594630944;
  15.     FOR N := 3 TO 12 DO
  16.       Freq_Val[N] := Freq_Val[N - 1] * Freq_Val[2];
  17.     Freq_Val[0] := 1/Freq_Val[2];
  18.     Oct_Val[5] := 32.70319566;
  19.     FOR N := 6 TO 12 DO
  20.       Oct_Val[N] := Oct_Val[N - 1] * 2;
  21.   END;
  22.  
  23.   FUNCTION Hertz(oct, nt : byte) : Word;
  24.   BEGIN
  25.     Hertz := Round(Oct_Val[oct]*Freq_Val[nt]);
  26.   END;
  27.  
  28.  
  29.  
  30.